#include "../server.hpp"

void OnConnected(const PtrConnection& conn){
    DBG_LOG("NEW CONNECTION: %p",conn.get());
}

void OnMessage(const PtrConnection& conn,Buffer* buf){
    DBG_LOG("%s",buf->ReadPosition());
    buf->MoveReadOffset(buf->ReadAbleSize());
    std::string str = "hello world";
    conn->Send(str.c_str(),str.size());
    // conn->Shutdown();
}
void OnClosed(const PtrConnection& conn){
    DBG_LOG("Close CONNECTION: %p",conn.get());
}
int main(){
    TcpServer server(8080);
    server.SetThreadCount(2);
    server.EnableInactiveRelease(10);
    server.SetConnectedCallback(OnConnected);
    server.SetMessageCallback(OnMessage);
    server.SetClosedCallback(OnClosed);
    server.Start();
    return 0;
}